Si considerino i seguenti fatti di interesse di una scuola
media.
Insegnanti: un insegnante è identificato dal codice fiscale;
di ogni insegnante interessa il cognome, il nome, le materie d’insegnamento, le
classi in cui insegna (supponiamo che un insegnante possa insegnare materie
diverse in classi diverse, ad es. Italiano in una classe e Storia e Geografia
in un’altra classe).
Studenti: uno studente è identificato da cognome, nome, di
ogni studente interessa inoltre il luogo di nascita, la data di nascita, la
classe che frequenta.
Classi: una classe è identificata da un numero (1, 2 o 3) e
dalla sezione; di ogni classe interessa inoltre il numero di studenti che la
frequentano, gli insegnanti che vi insegnano e gli studenti che la frequentano.
a)
Modellare i fatti sopra descritti nel modello E-R
b)
Tradurre lo schema E-R in uno schema relazionale
c)
Definire lo schema del punto b in SQL
d)
Definire un’interrogazione in SQL che restituisca il
numero di studenti della classe frequentata da Paoli Piero
e)
Definire in SQL, le operazioni da eseguire nel caso
che lo studente Paoli Piero abbandoni la scuola
Un calzaturificio si rifornisce di pellame da vari fornitori
e consulta vari stilisti per scegliere il modello delle scarpe che produce.
Di ogni fornitore interessa il nome, la sede, il pellame che
produce.
Del pellame interessa il materiale (vitello, coccodrillo,
sintetico,…), il prezzo ed i fornitori.
Delle scarpe interessa il modello, il nome dello stilista
che lo ha disegnato, il prezzo di vendita e il pellame
a)
Modellare i fatti sopra descritti nel modello E-R,
scegliendo un codice come chiave per ogni entità.
b)
Tradurre lo schema E-R in uno schema relazionale
c)
Definire lo schema del punto b) in SQL
d)
Definire in SQL l’interrogazione: “Quali fornitori
producono il pellame per le scarpe il cui modello è disegnato dallo stilista
XY”
Si considerino i seguenti fatti di interesse di un’agenzia
immobiliare.
Immobili in vendita: di un immobile, identificato da un
codice, interessa il tipo (appartamento, villa, …), la superficie, il numero di
vani, eventuali annessi (garage, cantina, giardino, …), il prezzo richiesto, il
proprietario.
Proprietari: un proprietario è identificato dal codice
fiscale; di ogni proprietario interessa il cognome, il nome, il num.
Telefonico, gli immobili in vendita di cui è proprietario.
a)
Modellare i fatti sopra descritti nel modello E-R
b)
Tradurre lo schema E-R in uno schema relazionale
c)
Definire lo schema del punto b) in SQL
d)
Definire una interrogazione in SQL che restituisca
codice fiscale, cognome e nome dei proprietari di appartamenti di 5 vani per i
quali è richiesta una cifra inferiore a 300 milioni
Si consideri un’anagrafe contenente informazioni riguardanti
persone:
Codice fiscale (che identifica una persona), cognome, nome,
sesso, età, comune di residenza, se la persona lavora oppure no.
Se una persona lavora è specificata la sua attività ed il
comune in cui questa si svolge, se invece non lavora è specificato se è disoccupata
od in attesa di primo impiego.
I comuni sono identificati dal nome, di essi viene inoltre
specificata la provincia, la regione ed il numero di abitanti
a)
Modellare i fatti sopra descritti nel modello E-R
b)
Tradurre lo schema E-R in uno schema relazionale
c)
Definire lo schema del punto b) in SQL
d)
Definire in SQL un’interrogazione che restituisca
cognome e nome delle persone che lavorano in provincia di Pisa.
e)
Con riferimento allo schema del punto b) scrivere
un’espressione dell’algebra relazionale che restituisca nome, cognome e sesso
di una persona che lavora nel comune di Lucca
Si considerino le seguenti informazioni di interesse di una
ditta di autotrasporti.
Le informazioni che interessano riguardano:
Gli automezzi: targa, marca, tipo, portata;
gli autisti: codice fiscale, cognome, nome, età, indirizzo;
i viaggi compiuti e quelli in corso: codice viaggio,
automezzo utilizzato, l’autista (o gli autisti), una descrizione del carico
trasportato, città di partenza, data e ora di partenza, città di destinazione,
data e ora di arrivo (se il viaggio è terminato).
a)
Definire lo schema concettuale dei dati nel modello
E-R e
b)
tradurlo nel modello relazionale
c)
Definire la base dati in SQL
d)
Definire in SQL una tabella virtuale Autistiinviaggio
contenente il codice fiscale, cognome, nome, destinazione di tutti gli autisti
impegnati in viaggi non ancora conclusi
Si considerino i seguenti fatti relativi ad un istituto di
ricerca.
L’istituto è composto di sezioni; una sezione è identificata
da un codice; di una sezione interessa il nome, il responsabile, i ricercatori
che vi afferiscono.
Un ricercatore è identificato da un codice; di un
ricercatore interessa il nome, la sezione di appartenenza, i progetti a cui
partecipa.
Un progetto è identificato da un codice; di un progetto
interessa l’obiettivo, il responsabile, i ricercatori che vi partecipano
a)
Modellare i fatti sopra descritti nel modello E-R
b)
Tradurre lo schema E-R in uno schema relazionale
c)
Definire lo schema della base di dati in SQL
In una società di software vengono eseguiti lavori per conto di clienti; per l’esecuzione di tali lavori possono essere impiegati sia dipendenti della società che consulenti esterni, ma il responsabile è sempre un dipendente.
Di ciascun dipendente, identificato dal codice fiscale,
interessa il nome, il cognome, la qualifica, la data di assunzione, i lavori in
cui è impegnato e se ne è il responsabile.
Di ciascun consulente, identificato dal codice fiscale,
interessa il nome e cognome, la partita IVA, l’indirizzo, i lavori in cui è
impegnato, la retribuzione pattuita per ciascun lavoro.
Dei clienti, identificati dal codice fiscale, interessa il
nome e cognome oppure la denominazione se trattasi di una ditta, ed i lavori
commissionati.
Di ciascun lavoro in corso, identificato da un codice,
interessa la data di inizio, il costo, il personale impegnato (dipendenti e/o
consulenti), il cliente che lo ha commissionato
a)
Modellare i fatti sopra descritti nel modello E-R
b)
Tradurre lo schema E-R in uno schema relazionale
c)
Definire lo schema della base dati in SQL
d)
Definire una vista (tabella virtuale) contenente
cognome, nome, partita Iva dei consulenti impegnati in lavori per i quali è
prevista una retribuzione superiore ad un milione.
e)
Definire una interrogazione SQL che restituisca, per
ciascun cliente, il codice fiscale del cliente, la denominazione ed il costo
totale dei lavori commissionati dal cliente e che hanno avuto inizio nel marzo
2000
La base dati di una farmacia contiene i dati relativi alla vendita e all’acquisto di farmaci durante l’anno. I dati disponibili sono:
nome del farmaco
codice (univoco) del farmaco
per ogni farmaco, la data ed il numero di esemplari venduti
in quella data;
a)
Definire uno schema E-R ed uno schema relazionale che
modellino tali informazioni
b)
Definire la base dati in SQL
c)
Definire una tabella virtuale, ordinata per
nome_farmaco, che abbia il seguente formato:
[nome_farmaco, quantità_venduta]
relativa ai
farmaci venduti nel 2000
Si considerino i seguenti fatti di interesse di una impresa
edile:
L’impresa è articolata in 4 settori: Progetti, Costruzione,
Amministrazione, Vendite; ogni settore ha un responsabile, ed oltre a questi,
di ogni settore interessano gli altri dipendenti.
I dipendenti sono identificati dal codice fiscale: di
ciascun dipendente interessano i dati anagrafici, la qualifica, il settore di
appartenenza (ogni dipendente appartiene ad uno ed un solo settore).
I cantieri aperti sono identificati da un codice: di ciascun
cantiere interessa il progettista (appartenente al settore Progetti), il
direttore dei lavori, il capocantiere, gli operai che vi lavorano (appartenenti
al settore Costruzione), il nome del cliente per il quale viene eseguito il
lavoro.
a)
Modellare i fatti sopra descritti nel modello E-R
b)
Tradurre lo schema E-R in uno schema relazionale
c)
Definire lo schema della base dati in SQL
Si prendano in esame i seguenti fatti, riguardanti il
crimine organizzato:
I criminali sono organizzati in bande; di ciascuno di essi,
identificato da un codice, interessano i dati anagrafici, la banda cui è
affiliato, gli eventuali crimini addebitategli con l’anno in cui gli
investigatori hanno formulato l’incriminazione.
Di ogni banda, identificata da un codice, interessa il nome,
il capo e gli altri affiliati, le altre bande con cui eventualmente collabora.
Una banda è costituita da almeno tre affiliati, compreso il capo.
Di ogni crimine, identificato da un codice, interessa il
luogo e la data, le persone colpite, gli eventuali responsabili.
a)
Modellare i fatti sopra descritti nel modello E-R
b)
Tradurre lo schema E-R in uno schema relazionale
c)
Definire lo schema della base dati in SQL
d)
Definire una interrogazione in SQL che data una
banda, restituisca tutti i crimini addebitati ai suoi affiliati
Si considerino i seguenti fatti, di interesse di un
ospedale:
Reparti: un reparto è identificato da un codice; di ogni
reparto interessa il nome, i medici operanti nel reparto, i pazienti
ricoverati, il direttore.
Pazienti: un paziente è identificato da un numero; di ogni
paziente interessa il nome, il sesso, il reparto in cui è ricoverato, la data
di ricovero.
Medici: un medico è identificato dal codice fiscale: di ciascun medico interessa il nome, la specializzazione, il reparto di appartenenza.
a)
Modellare i fatti sopra descritti nel modello E-R
b)
Tradurre lo schema E-R in uno schema relazionale
c)
Definire lo schema della base dati in SQL